Tömb feltöltése véletlen számokkal és az elemek elrendezése terítő rendezéssel, eljárások használatával (Terito.pas)

program Terito;
uses crt;
var i,j,n,m:integer;
    a:array [1..50] of integer;
    gyak:array [1..90] of integer;

procedure feltolt;
var i:integer;
begin
   for i:=1 to n do begin
      a[i]:=trunc(90*random)+1;
      end;
   end;

procedure kiir;
var i:integer;
begin
   for i:=1 to n do begin
      writeln(a[i]);
      end;
   end;

BEGIN
   clrscr;
   randomize;
   n:=10;
   feltolt;
   writeln('A szamok rendezes elott:');
   kiir;
   for j:=1 to 90 do begin
      gyak[j]:=0;
      end;
   for i:=1 to n do begin
      inc(gyak[a[i]]);
      end;
   i:=1;
   for j:=1 to 90 do begin
      while (gyak[j]>0) do begin
         a[i]:=j;
         inc(i);
         dec(gyak[j]);
         end;
      end;
   writeln('');
   writeln('A szamok rendezes utan:');
   kiir;
   readkey;
END.